<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
</head>
<body>
    <script >
       /*
        接受一个二维数组
       */

       const result = Object.fromEntries([
           [name,'123'],[age,'123']
       ])
       // 会变成一个这样的内容
       /*
       将一个二维数组，转换为对象
        {
            name:'123',
            age:'123'
        }
       */

       // 接受一个map，创建对象
       const m = new Map();
       m.set('name',123);
       const result1 = Object.createEntries(m)
       /*
       m = {
           name:123
       }
       */

       // 接受一个对象，将会转化为二维数组，第一个索引是key，第二个索引是value
       const a = Object.entries({name:'123'});
       /*
       Array(2)
        0:'name',
        1:'123'
       */


       // 扁平化 flat
       // 将多维数组 转化为 低位数组
       const arr = [1,2,3,4,[2,6]];
       const arr1 = [1,3,4,[2,3,[2,3]]];
       arr.flat();// -> [1,2,3,4,2,6];
       // 你默认不填写参数的话，默认只会达到一层深度，即
       // 2->1 
       arr2.flat()//[1,3,4,2,3,[2,3]];
       // 你可以选择，传递深度参数，来达到你想要的扁平程度
       arr2.flat(2)

       // flatMap
       const arr4 = [1,2,3,4];
       const result4 = arr4.flatMap(item=>[item*10])
       // [[10],[20],[30],[40]] => [10,20,30,40]

    </script>
</body>

</html>